The complete Novell NetWare system provides the following services:

 file
|
 print
|
 message
|
 application
|
 database
|
NetWare is based on a server-centric architecture.
|
This means that remote devices appear local to the user.
|
All the servers on NetWare internetworks can advertise their services and addresses using Service Advertisement Protocol (SAP).
|
All servers and routers keep a complete list of the services available throughout the network.
|
Service advertisements synchronize the list of available services.
|
Adding, finding, and removing services on an IPX network is dynamic because of SAP advertisements.
|
Each SAP service is identified by a hexadecimal number.
|
Some typical examples would be

 file server - hex 4
|
 print server - hex 7
|
 remote bridge server - hex 24
@@
An IPX client needs to broadcast a Get Nearest Server (GNS) request when it requires a specific service.
|
Responses to a GNS request can come from

 local servers
|
 local routers
|
 remote servers
|
A GNS request is a broadcast that is issued by a client using IPX SAP.
|
A GNS packet requests a specific service from a server.
|
The nearest NetWare server offering the service responds with another SAP.
|
A GNS response allocates a server to the client, allowing the client to log in to the target server and proceed to use server resources.
|
The Cisco router can respond to a GNS request on a network segment, but does not perform the nearest-server function.
|
A router acts like a server by building a SAP table.
|
If real NetWare servers are located on the segment, they should be first to respond to the client request.
|
The router's GNS response can be delayed to allow local servers to respond first.
|
On Cisco routers you can use the IPX GNS-Response-Delay command to specify the length of time (in milliseconds) that a router should wait before sending a GNS response.
|
The default is 0 milliseconds or no delay.
|
Zero delay indicates the assumption that no server is present on this segment and a rapid response by the router is desirable.
|
By default, Cisco routers running IOS 11.1 respond to GNS requests with the most recently known and available server of the type requested.
|
However, you can configure the router to use a round-robin strategy in an effort to spread work evenly among servers.
|
With round-robin, the router answers successive GNS requests for a particular server by providing the address of the next server available.
|
One undesirable side effect of round-robin is the tendency to allocate remote servers when closer ones are available.
|
To configure a router for round-robin operation use the IPX GNS-Round-Robin command.
|
A Cisco router does not forward individual SAP broadcasts.
|
SAP tables are created and maintained by routers to state advertised internetwork server information.
|
Instead, the SAP table is advertised at regular intervals.
|
The default interval is 60 seconds.
|
A router will always accept service information as long as the server's network is reachable.
|
When choosing a server for a GNS response, the ^Rtick value^r of the route to each eligible server is used as the metric.
|
The tick value is a delay time measurement used as the primary metric in determining the best path to a destination.
|
If the tick values are equal, then hop count is used as the tiebreaker.
@@
NetWare has a large variety of protocols and programming interfaces associated with it.
|
These protocols are modular and layered, but they do not fit neatly into OSI's seven-layer model.
|
The transport layer handles conversations between end nodes.
|
This type of flow control is called ^Rend-to-end flow control^r.
|
In end-to-end flow control, just the sender and the receiver are involved in recovering lost or delayed packets on the internetwork.
|
Sequenced Packet Exchange (SPX) is the most commonly used NetWare transport protocol.
|
Novell derived this protocol from the Sequenced Packet Protocol (SPP) of the XNS protocol suite.
|
SPX uses ^Rsegment sequencing^r to reorder segments that are received in a different order to that transmitted.
|
Segment sequencing numbers are unique.
|
When all of the segments for a given message have arrived at their destination, the message is rebuilt by shuffling the segments into their correct order.
|
SPX is a reliable, connection-oriented protocol.
|
SPX supplements the datagram service provided by layer 3 protocols.
|
It monitors network transmissions to ensure successful delivery.
|
Data segments can be lost, delayed, or corrupted as they travel through the network.
|
SPX verifies and acknowledges successful packet delivery to any network destination.
|
SPX requests verification from the destination that transmitted data was successfully received.
|
Received verifications must include a value or checksum that matches a value calculated from the data before transmission.
|
By comparing checksums, SPX can ensure error free delivery of the transmitted data packet.
|
SPX can track data transmissions consisting of a series of separate packets.
|
If an acknowledgment request is not received within a specified time, SPX will retransmit the entire series of packets in the transmission.
|
When a specific number of retransmissions fail to return a positive acknowledgment, SPX assumes the connection has failed and warns the operator.
|
Cisco IOS 11.1 supports SPX spoofing.
|
Spoofing is a scheme used by Cisco routers to cause a host to treat an interface as if it were up and supporting a session.

The router "spoofs" replies to keepalive messages from the host in order to convince the host that the session still exists.
|
This feature allows clients and servers to create their own "watchdog keepalive" packets at a user-defined rate.
|
Watchdog spoofing allows a router to act for a NetWare client by sending watchdog packets to a NetWare server to keep the session between client and server active.
|
SPX spoofing receives, recognizes, and successfully acknowledges these packets at both the client and server ends of a wide-area link.
|
Requests for the transmission of legitimate information triggers the dial-up connection, resulting in reduced WAN costs.
@@
Novell also offers Internet Protocol (IP) support in the form of User Datagram Protocol/Internet Protocol (UDP/IP) encapsulation of other Novell packets.
|
IPX/SPX datagrams are encapsulated inside UDP/IP headers for transport across an IP-based internetwork.
|
The User^R ^rDatagram Protocol^R ^r(UDP), like TCP, provides transport services.
|
Unlike TCP, it is not connection-oriented, does not acknowledge data receipt, and simply accepts and transports datagrams.
|
Datagram delivery is accomplished by assigning a port address.
|
A port address is simply a pointer to a local process rather than a virtual circuit connection.
|
UDP usually transfers data faster than TCP.
|
This is because UDP is not concerned with processes such as establishing and maintaining connections, controlling data flow, or other overheads incurred by connection-oriented protocols.
@@
NetWare supports a wide variety of upper layer protocols.
|
The NetWare shell (or NetWare DOS Requester) runs on clients or workstations.
|
It consists of a number of Virtual Loadable Modules (VLMs).
|
A VLM is a modular executable program with a set of logically grouped features.
|
For example, transport-related functions such as "send packets" and "receive packets" fit logically into a VLM.
|
The NetWare shell intercepts application I/O calls to determine whether they require network access for satisfaction.
|
If network access is required, the NetWare shell packages the requests and sends them to lower layer software for processing and network transmission.
|
Where network access is not required, the requests are simply passed to local I/O resources.
|
Client applications are unaware of any network access required for completion of application calls.
@@
NetWare Remote Procedure Call (NetWare RPC) is another more general redirection mechanism supported by Novell.
|
RPC is a session layer protocol.
|
RPC allows local applications to call functions on other networks.
|
Local function calls are passed to software usually called a ^Rredirector^r, ^Rshell^r, or ^Rvirtual file system interface^r.
|
This software determines whether the call can be satisified locally or requires a network access.
|
If the call can be satisfied locally, then it is sent to the local operating system and completed.
|
Otherwise the call is packaged and sent over the network to a server.
|
RPC servers are usually specialized service providers that can handle many RPC calls and store many files.
|
The server executes the function call and puts the results in a reply packet.
|
The reply packet is then returned to the original operating system or client.
@@
The ^RNetWare Core Protocol^r (NCP) is a series of server routines designed to satisfy application requests coming from, for example, the NetWare shell.
|
NetWare Core Protocols exist for every service a workstation might request from a server.
|
Services provided by NCP include

 file access
|
 printer access
|
 name management
|
 accounting
|
 security
|
 file synchronization
|
Common requests handled by NCP include creating or destroying a service connection, manipulating directories and files, opening semaphores, and printing.
|
A semaphore is a flag that is used to coordinate access to global data in a multiprocess environment.
|
NCP comprises numerous function calls that support network services.
|
NetWare client software running on workstations uses NCP function calls to provide transparent file and printer access to service clients.
@@
NetWare application layer services include

 NetWare Message
  Handling Service
  (NetWare MHS)
|
 Btrieve
|
 NetWare Loadable
  Modules (NLMs)
|
 various IBM
  connectivity 
  features
|
Messaging is a core network service.
|
NetWare Message Handling Service (NetWare MHS) is a message delivery system that provides electronic mail transport.
|
Basic MHS is the starter product in the NetWare MHS family.
|
It provides message delivery among users on the same file server.
|
Global MHS is a scalable, full-featured MHS platform that provides network-wide message delivery.
|
It supports message delivery among users at multiple file servers.
|
NetWare Remote MHS provides laptop users with convenient asychronous access to the MHS network.
|
Basic MHS is fully compatible with Global MHS and offers the following features:

 it allows full-name user
  addressing
|
 it supports third party 
  message applications 
  such as electronic mail
|
 users can be imported
  from the NetWare 
  bindery into the Basic 
  MHS database on 
  installation
|
Bindery refers to a database that contains definitions for entities such as users, groups, and workgroups.
|
Typical operation of Basic MHS would be as follows.
|
Users create messages with an MHS-compatible electronic mail application that complies with Novell's Standard Message Format (SMF) interface.
|
The application submits the message to Basic MHS, which delivers it to the recipient's mailbox.
@@
Btrieve is Novell's implementation of the binary tree (btree) database access mechanism.
|
The Btrieve key-indexed record management system is designed for high performance data handling and improved programming productivity.
|
Btrieve allows your application to retrieve, insert, update, or delete either by key value or by sequential or random access methods.
|
NetWare Btrieve is server-based rather than client-based.
|
It automatically creates and maintains file indexes as records are inserted, updated, and deleted.
|
Btrieve allows file sizes of up to 4 Gigabytes.
|
It offers consistent file structures and management routines.
|
Btrieve allows you specify the amount of memory to reserve for the I/O cache buffers it uses to hold pages previously read.
|
It also allows concurrent access to records in multiuser environments while ensuring file integrity.
|
A Btrieve application running on a server can access data on the local server or on a remote server.
|
A Btrieve application running on a workstation can access local, remote, or local and remote data.
@@
A NetWare Loadable Module (NLM) is a program you can load and unload from server memory while the server is running.
|
NLMs are implemented as add-on modules that attach into the NetWare system.
|
NLMs for alternative protocol stacks, communication services, database services, and many other services are currently available from Novell and third parties.
@@
Novell also supports IBM Logical Unit (LU) 6.2 network addressable units (NAUs).
|
LU 6.2 allows peer-to-peer connectivity across IBM communication environments.
|
LU 6.2 allows NetWare nodes to exchange information across an IBM network.
|
The NetWare packets are encapsulated within LU 6.2 packets for transport across the IBM network.
|
NetWare also supports the Network Basic Input/Output System (NetBIOS) session layer interface specification from IBM and Microsoft.
|
NetWare's NetBIOS emulation software allows workstations within the NetWare system to run applications that support IBM's NetBIOS calls.
@@
